extends Node

var database: ItemDatabaseResource

func _ready():
	# 使用 load 代替 preload
	database = load("res://resources/item_database.tres")
	print("数据库是否加载完毕: ", database != null)  # 调试信息
	if database:
		print("物品数据库数量: ", database.items.size())  # 打印数据库中的物品数量
	
	if not database:
		push_error("Failed to load item database")
		return

func get_item(id: String) -> Item:
	print("尝试通过id获取物品: ", id)  # 调试信息
	if database:  # 添加空值检查
		var data = database.get_item_data(id)
		print("找到物品: ", data != null)  # 调试信息
		if data:
			print("物品详情: ", data)  # 打印 data 的内容
			if "id" in data:  # 确保 data 中有 id 键
				var item = Item.new()
				item.id = data.id
				item.name = data.name
				item.description = data.description
				item.icon = database.get_item_icon(data)
				item.type = data.type
				item.stackable = data.stackable
				item.max_stack = data.max_stack
				item.use_effect = data.use_effect
				item.damage = data.damage
				item.defense = data.defense
				item.heal_amount = data.heal_amount
				return item
			else:
				print("物品数据库中没有该id的物品: ", data)  # 错误信息
	print("获取物品失败 ", id)  # 调试信息
	return null 
